home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 7: Sunsite / Linux Cubed Series 7 - Sunsite Vol 1.iso / system / news / inn1.000 / inn1.4sec-linux-src.tar / inn / innd / Makefile < prev    next >
Makefile  |  1993-03-18  |  3KB  |  106 lines

  1. ##  $Revision: 1.21 $
  2. SHELL    = /bin/sh
  3. MAKE    = make
  4. ##  =()<P    = @<P>@>()=
  5. P    = 
  6.  
  7. ##  =()<CC    = @<CC>@>()=
  8. CC    = cc
  9. ##  =()<DEFS    = @<DEFS>@>()=
  10. DEFS    = -I../include
  11. ##  =()<CFLAGS    = @<CFLAGS>@>()=
  12. CFLAGS    = $(DEFS) -g
  13. ##  =()<LDFLAGS    = @<LDFLAGS>@>()=
  14. LDFLAGS    = -g
  15. ##  =()<LINTFLAGS    = @<LINTFLAGS>@>()=
  16. LINTFLAGS    = -b -h -z $(DEFS)
  17. ##  =()<LINTFILTER    = @<LINTFILTER>@>()=
  18. LINTFILTER    = | sed -n -f ../sedf.sun
  19. ##  =()<CTAGS        = @<CTAGS>@>()=
  20. CTAGS        = ctags -t -w
  21. ##  =()<PROF    = @<PROF>@>()=
  22. PROF    = -pg
  23.  
  24. ##  =()<INND    = @<_PATH_INND>@>()=
  25. INND    = /news/bin/innd
  26. ##  =()<INNDSTART    = @<_PATH_INNDSTART>@>()=
  27. INNDSTART    = /news/bin/inndstart
  28. ## =()<OWNER    = -O @<NEWSUSER>@ -G @<NEWSGROUP>@>()=
  29. OWNER    = -O news -G news
  30.  
  31. ##  =()<LIBS    = @<LIBS>@>()=
  32. LIBS    = 
  33. LIBNEWS    = ../libinn.a
  34. LINTLIB    = ../llib-linn.ln
  35.  
  36. SOURCES    = \
  37.     art.c cc.c chan.c his.c icd.c innd.c lc.c nc.c newsfeeds.c ng.c \
  38.     proc.c rc.c site.c
  39.  
  40. OBJECTS    = \
  41.     art.o cc.o chan.o his.o icd.o innd.o lc.o nc.o newsfeeds.o ng.o \
  42.     proc.o rc.o site.o
  43.  
  44. ALL    = innd inndstart
  45.  
  46. all:        $(ALL)
  47.  
  48. install:    $(INND) $(INNDSTART)
  49.  
  50. clobber clean:
  51.     rm -f *.o $(ALL)
  52.     rm -f inndp profiled
  53.     rm -f all install lint
  54.  
  55. tags ctags:    $(SOURCES)
  56.     $(CTAGS) $(SOURCES) ../lib/*.c innd.h ../include/*.h
  57.  
  58. innd:        $(P) $(OBJECTS) $(LIBNEWS)
  59.     $(CC) $(LDFLAGS) -o $@ $(OBJECTS) $(LIBNEWS) $(LIBS)
  60.  
  61. inndstart:    $(P) inndstart.o $(LIBNEWS)
  62.     $(CC) $(LDFLAGS) -o $@ inndstart.o $(LIBNEWS) $(LIBS)
  63.  
  64. lint:        $(ALL)
  65.     @rm -f lint
  66.     lint $(LINTFLAGS) $(SOURCES)  $(LINTLIB) $(LINTFILTER)  >lint
  67.     lint $(LINTFLAGS) inndstart.c $(LINTLIB) $(LINTFILTER) >>lint
  68.  
  69. ../include/dbz.h:
  70.     (cd ../lib ; $(MAKE) ../include/dbz.h)
  71. $(LIBNEWS) $(LINTLIB):
  72.     (cd ../lib ; $(MAKE) install)
  73.  
  74. ##  Profiling.  The rules are a bit brute-force, but good enough.
  75. profiled:    inndp
  76.     date >$@
  77.  
  78. inndp:        $(SOURCES)
  79.     rm -f $(OBJECTS)
  80.     $(MAKE) innd CFLAGS="$(CFLAGS) $(PROF)" LIBNEWS=../libinn_p.a
  81.     mv innd inndp
  82.     rm -f $(OBJECTS)
  83.  
  84. ##
  85. ccenter:    $(SOURCES)
  86.     #load $(CFLAGS) $(SOURCES) $(LIBNEWS)
  87.  
  88. ##  Low-level install actions.
  89. $(INND):    innd
  90.     $(SHELL) ../installit.sh $(OWNER) -m 0555 -b .OLD $? $@
  91. $(INNDSTART):    inndstart
  92.     $(SHELL) ../installit.sh -m 0555 -b .OLD $? $@
  93.  
  94. ##  Dependencies.  Default list, below, is probably good enough.
  95. depend:        Makefile $(SOURCES) ../include/dbz.h
  96.     makedepend $(DEFS) $(SOURCES)
  97.  
  98. # DO NOT DELETE THIS LINE -- make depend depends on it.
  99. $(OBJECTS):    innd.h ../include/clibrary.h ../include/configdata.h \
  100.         ../include/libinn.h ../include/logging.h \
  101.         ../include/macros.h ../include/nntp.h ../include/paths.h
  102. ng.o:        ../include/mydir.h
  103. inndstart.o:    ../include/clibrary.h ../include/configdata.h \
  104.         ../include/libinn.h ../include/logging.h \
  105.         ../include/macros.h ../include/paths.h
  106.